#ifndef _FRACTAL_AFRACTAL_H_
#define _FRACTAL_AFRACTAL_H_


#include <memory>
#include "../fbitmap.hpp"
#include "colormap.hpp"


using std::auto_ptr;


struct AFractal
{
    auto_ptr<Colormap> cm;
    int width, height;
    int max_iter;
    double left, right, bottom, top;

    AFractal(int width=0, int height=0, int max_iter=0,
	     double left=0.0, double right=0.0, double bottom=0.0, 
	     double top=0.0);
    virtual ~AFractal(void);

    virtual void render(FBitmap &bm, const Colormap &cm) = 0;
};


#endif  // _FRACTAL_AFRACTAL_H_
